package com.allwees.bs.c.module.product.dao;

import com.allwees.bs.c.module.product.entity.SkuEntity;
import com.allwees.core.dao.mybatis.dao.BaseDao;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Update;

import java.util.List;

/**
 * @Author Daniel
 * @Version 1.0.0
 * @Description
 * @CreateTime 2020/9/11 17:20
 */
public interface SkuDao extends BaseDao<SkuEntity> {

    SkuEntity selectBySkuUuid(@Param("uuid") String uuid);

    List<SkuEntity> selectForCheck(@Param("uuids") List<String> uuids);

    List<SkuEntity> fetchQuantity(@Param("uuids") List<String> uuids);

    List<SkuEntity> findProductAllSku(@Param("productUuid") String productUuid);

    @Update({"UPDATE prod_sku set quantity = quantity + #{addend} WHERE `uuid` = #{skuUuid}"})
    int updateInventory(@Param("skuUuid") String skuUuid,@Param("addend") int addend);
}
